package com.ecoolex.ying.space.ws;

import java.util.List;

import com.ecoolex.framework.common.exception.BizException;
import com.ecoolex.framework.common.pojo.Page;
import com.ecoolex.framework.common.pojo.Pagination;
import com.ecoolex.framework.common.pojo.Sorting;
import com.ecoolex.ying.space.entity.EstateProjectActivityExternalGoods;
import com.ecoolex.ying.space.entity.EstateProjectActivityExternalGoodsCategory;

public interface EstateProjectActivityExternalGoodsService {

	EstateProjectActivityExternalGoods get(Integer externalGoodsId);
	
	Pagination<EstateProjectActivityExternalGoods> query(Integer projectId,String name,Integer externalGoodsCategoryId,Sorting[] sorts,Page page);
	
	Pagination<EstateProjectActivityExternalGoods> queryForH5(Integer projectId,Integer externalGoodsCategoryId,Page page);
	
	EstateProjectActivityExternalGoods add(EstateProjectActivityExternalGoods add,String createUser) throws BizException;
	
	EstateProjectActivityExternalGoods edit(EstateProjectActivityExternalGoods edit,String updateUser) throws BizException;
	
	void delete(EstateProjectActivityExternalGoods record,String updateUser) throws BizException;
	
	void online(EstateProjectActivityExternalGoods record,String updateUser) throws BizException;
	
	void offline(EstateProjectActivityExternalGoods record,String updateUser) throws BizException;
	
	EstateProjectActivityExternalGoodsCategory getCategory(Integer externalGoodsCategoryId);
	
	List<EstateProjectActivityExternalGoodsCategory> childrenCategory(Integer externalGoodsCategoryId);
	
	Pagination<EstateProjectActivityExternalGoodsCategory> queryCategory(Integer projectId,String name,Sorting[] sorts,Page page);
	
	Pagination<EstateProjectActivityExternalGoodsCategory> queryCategoryForH5(Integer projectId,Page page);
	
	EstateProjectActivityExternalGoodsCategory addCategory(EstateProjectActivityExternalGoodsCategory record,String createUser) throws BizException;
	
	EstateProjectActivityExternalGoodsCategory editCategory(EstateProjectActivityExternalGoodsCategory record,String updateUser) throws BizException;

	void deleteCategory(EstateProjectActivityExternalGoodsCategory record,String updateUser) throws BizException;
	
	void onlineCategory(EstateProjectActivityExternalGoodsCategory record,String updateUser) throws BizException;
	
	void offlineCategory(EstateProjectActivityExternalGoodsCategory record,String updateUser) throws BizException;
}
